#ifndef _CSURFACE_H_
#define _CSURFACE_H_

#include "sdl.h"

class CSurface 
{
	public:

		// the constructor for the csurface
		CSurface();
		
		/* used to handle loading new images
		
			parameters:
				File - the filename
		*/
		static SDL_Surface* OnLoad(char* File);

		/* used to draw an image to the screen (basically as background)
			
			parameters:
				Surf_Dest - The destination surface (the object we will draw our surface on)
				Surf_Src - The source surface (the obejct we are drawing from)
				X - The x-coordinate of the destination surface (where to start drawing our surface from the x-coordinate)
				Y - The y-coordinate of the destination surface (where to start drawing our surface from the y-coordinate)
		*/
		static bool OnDraw(SDL_Surface* Surf_Dest, SDL_Surface* Surf_Src, int X, int Y);

		/* used to draw a piece of an image to the screen

			parameters:
				Surf_Dest - The destination surface (the object we will draw our surface on)
				Surf_Src - The source surface (the obejct we are drawing from)
				X - The x-coordinate of the destination surface (where to start drawing our surface from the x-coordinate)
				Y - The y-coordinate of the destination surface (where to start drawing our surface from the y-coordinate)
				X2 - The x-coordinate of the source surface (where to start copying the source surface from the x-coordinate)
				Y2 - The y-coordinate of the source surface (where to start copying the source surface from the y-coordinate)
				W - The width of the image
				H - The height of the image
		*/
		static bool OnDraw(SDL_Surface* Surf_Dest, SDL_Surface* Surf_Src, int X, int Y, int X2, int Y2, int W, int H);
};

#endif